home *** CD-ROM | disk | FTP | other *** search
-
- /***********************************************
- *
- * file d:\cips\cips.c
- *
- * Functions: This file contains
- * main
- * clear_text_screen
- * show_menu
- * show_image
- *
- * External Calls:
- * numcvrt.c - get_integer
- * gin.c - get_image_name
- * rtiff.c - read_tiff_image
- * tiff.c - read_tiff_header
- * rstring.c - read_string
- * display.c - display_image
- * display_menu_for_display_image
- * pi.c - print_image
- *
- * Modifications:
- * 26 June 1990 - created
- *
- *************************************************/
-
- #include "d:\cips\cips.h"
-
-
- short the_image[ROWS][COLS];
- short out_image[ROWS][COLS];
-
- main()
- {
-
- char color_transform[80],
- monitor_type[80],
- name[80],
- name2[80],
- rep[80];
-
- int color,
- display_colors,
- file_d,
- first_element,
- first_line,
- i,
- ie,
- il,
- image_colors,
- invert,
- j,
- le,
- ll,
- not_finished,
- response;
-
- long mean_of_pixels;
- struct tiff_header_struct image_header;
-
- clear_text_screen();
-
- not_finished = 1;
- response = 99;
-
- il = 1;
- ie = 1;
- ll = ROWS+1;
- le = COLS+1;
-
- display_colors = 16;
- image_colors = 16;
- invert = 0;
- strcpy(color_transform, "Straight mode");
- strcpy(monitor_type, "VGA");
-
- strcpy(name, "d:/pix/adam256.tif");
-
- while(not_finished){
- show_menu();
-
- get_integer(&response);
-
- switch (response){
-
- case 1:/* display image header */
- get_image_name(name);
- read_tiff_header(name, &image_header);
- printf("\n\nCIPS> The image header is:");
- printf("\n\t\twidth=%ld length=%ld start=%ld bits=%ld",
- image_header.image_width,
- image_header.image_length,
- image_header.strip_offset,
- image_header.bits_per_pixel);
- printf("\nCIPS> Hit Enter to continue");
- read_string(rep);
- break;
-
- case 2:/* display image numbers */
- get_image_name(name);
- get_parameters(&il, &ie, &ll, &le);
- read_tiff_image(name, the_image, il, ie, ll, le);
- show_image(the_image, il, ie);
- break;
-
- case 3: /* print image numbers */
- get_image_name(name);
- get_parameters(&il, &ie, &ll, &le);
- read_tiff_image(name, the_image, il, ie, ll, le);
- print_image(the_image, name, 1, 1, 1, 100, 18,
- il, ie);
- break;
-
- case 4: /* display image */
- get_image_name(name);
- read_tiff_header(name, &image_header);
- get_parameters(&il, &ie, &ll, &le);
- display_menu_for_display_image(&image_colors,
- &display_colors, &invert,
- color_transform, monitor_type);
- display_image(name, the_image, il, ie,
- ll, le, &image_header, monitor_type,
- color_transform, invert,
- image_colors, display_colors);
- break;
-
- case 20: /* exit system */
- not_finished = 0;
- break;
-
- default:
- printf("\nCould not understand response, try again");
- break;
-
- } /* ends switch response */
- } /* ends while not finished */
- } /* ends main */
-
- /******************************************************
- * clear_text_screen()
- *
- * This calls Microsoft C functions to clear the text
- * screen and set a blue background with gray text.
- *******************************************************/
-
- clear_text_screen()
- {
- _setvideomode(_TEXTC80); /* MSC 6.0 statements */
- _setbkcolor(1);
- _settextcolor(7);
- _clearscreen(_GCLEARSCREEN);
- } /* ends clear_text_screen */
-
- /******************************************************
- * show_image(...
- *
- * This function displays the image numbers on the
- * screen as text. It displays 20 rows with 18
- * columns each.
- *******************************************************/
-
- show_image(image, il, ie)
- int il, ie;
- short image[ROWS][COLS];
- {
- int i, j;
- printf("\n ");
- for(i=0; i<18; i++)
- printf("-%3d", i+ie);
-
- for(i=0; i<20; i++){
- printf("\n%2d>", i+il);
- for(j=0; j<18; j++)
- printf("-%3d", image[i][j]);
- }
-
- printf("\nPress enter to continue");
- get_integer(&i);
-
- } /* ends show_image */
-
-
- /******************************************************
- * show_menu(..
- * This function displays the CIPS main menu.
- *******************************************************/
-
- show_menu()
- {
-
- printf("\n\n\nWelcome to CIPS");
- printf("\nThe C Image Processing System");
- printf("\nThese are you choices:\n");
- printf("\n\t1. Display image header");
- printf("\n\t2. Show image numbers");
- printf("\n\t3. Print image numbers");
- printf("\n\t4. Display image");
- printf("\n\t20. Exit system");
- printf("\n\nEnter choice _\b");
-
- } /* ends show_menu */
-